import java.util.Scanner;

/**
 * 题目描述
 * 给定一个只包含小写字母的字符串，统计字符串中每个字母出现的频率，并找出出现频率最高的字母，如果最高频率的字母有多个，输出字典序靠前的那个字母。
 * 输入描述
 * 包含多组测试数据，每组测试数据占一行。
 * 输出描述
 * 有多组输出，每组输出占一行。
 * 输入示例
 * 2
 * abcdeef
 * aabbccddeeff
 * 输出示例
 * e
 * a
 */
public class Main16 {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        int n = scanner.nextInt();
        for (int i = 0; i < n; i++) {
            String input = scanner.next();
            char mostChar = findMostFrequentChar(input);
            System.out.println(mostChar);
        }


    }

    private static char findMostFrequentChar (String inputString){
        int[] frequency = new int[26];
        // 遍历输入进来的字符，将字符按顺序依次放进数组中
        for (char c: inputString.toCharArray()) {
            // 实例：a - a = 0    b - a = 1 依次堆放 相同则相应次数+1
            frequency[c - 'a']++;
        }

        // 初始化最高频率字母 和次数
        char mostFrequencyChar = 'a';
        int maxFrequency = frequency[0];
        // 遍历作比较
        for (int i = 0; i < 26; i++) {
            // 遍历数组中的次数，若有大于初始化的最大次数
            if (frequency[i] > maxFrequency ){
                // 替换最大次数
                maxFrequency = frequency[i];
                // 替换最大字符 实例：f[1]大于初始化   最高评率字母 = 'a' + 1 = 'b'
                mostFrequencyChar = (char) ('a' + i);
            }
        }
        return mostFrequencyChar;
    }
}
